This invention relates to Digital-Subscriber Lines (DSL) systems, and more particularly to framing structures for lower line rates.
Telephone systems are increasingly being used to carry data traffic as well as voice calls. While analog modems were sufficiently useful for lower data rates, graphics, audio, and video data transfers have increased data-rate requirements. Integrated Services Digital Network (ISDN) and more recently Digital-Subscriber Line (DSL) including asymmetric DSL (ADSL) have been developed to provide higher data rates.
DSL systems have been developed that carry data on many carriers at the same time. The carriers are modulated in phase and amplitude to carry the data signals. Since multiple carriers separated in frequency are used, this technique is known as discrete multi-tone (DMT).
The data to be transmitted over the phone line is first framed by adding sync bytes and error correction bytes and blocking into symbols which are generated at an average 4 KHz rate. Based on the line characteristics a mapper assigns a different number of bits to each tone used. A constellation encoder modulates the various carriers with the data bits to produce a frequency domain signal. This signal is then converted from the frequency domain to the time domain by an inverse fast-Fourier transform (IFFT). This time domain signal is then converted from digital to analog voltages that drive the physical phone line (copper twisted pair).
Various other encoding techniques such as trellis encoding can be inserted before the IFFT. The actual signal on the phone line bears little resemblance to the user data once the various transformations and encodings are performed. Nevertheless, the data is arranged into frames before the transform and encoding, and the received data is also arranged in frames once transforms and decodings are completed.
FIG. 1A shows a high-rate DSL system. A user data stream is framed with sync and error-correction bytes to produce a 1.536 mega-bits-per-second (1.536 Mbits) stream. This information stream is divided into many frequency bins and input to IFFT 10. IFFT 10 converts a set of frequency bins into a series of time points every 250 xcexcsec in response to the 4 KHz system clock. Since a large number of frequency bins are used for the high user-data rate, the time-points output by IFFT 10 represents a symbol with many data bytes.
Symbol 12 represents 48 bytes of information transmitted over the phone line. A new symbol 12 is output by IFFT 10 for every period of the 4 KHz clock. Thus the data rate transmitted over the phone line, the line rate, is 48 bytesxc3x974 KHz=192 Bytes/sec, or 1.536 Mbits.
Telephone systems have traditionally used 4-8 KHz system clocks, and occasionally 4 KHz framing clocks. The IFFT is also clocked at the 4 KHz rate, outputting symbols at the 4 KHz rate. Framing is defined based on this 4 KHz physical layer. Thus each frame contains 48 bytes for the high-rate DSL system. Such a DSL system is being proposed for an International Telecommunications Union (ITU) standard known as G.Lite.
FIG. 1B shows a low-rate DSL system. Since the existing copper-pair telephone wires are used for DSL, the quality of the lines varies. Some customers may have poor-quality or longer lines that cannot support the high-rate DSL system of FIG. 1A. The physical lines of FIG. 1B support a line rate of only 64 Kbit. When the 4 KHz system clock is used, and symbols are output by IFFT 10 at the 4 KHz rate, each symbol 12 represents only 2 bytes (16 bits).
FIG. 2A shows a frame for a high-rate DSL system. Mux data frame 14 begins with one sync byte S, leaving 47 bytes for user data, the payload bytes P. The amount of the channel used for sync overhead is only 1/46.
FIG. 2B shows a frame for a low-rate DSL system. Mux data frame 14 begins with one sync byte S. Since each symbol is only 3 bytes, only two bytes are available for user data, payload bytes P. One-third of the channel is used for sync overhead. Thus framing based on the 4 KHz physical layer is inefficient at low line rates.
Error correction is often employed in DSL systems. Reed-Solomon (RS) forward-error-correction (FEC) bytes can be appended to a series of mux data frames to allow for detection and correction of errors within the frames. The FEC bytes together with the mux data frames form a RS codeword.
FIG. 3A shows a RS codeword using high-rate mux data frames. Four mux data frames 14 are provided with error correction by RS FEC bytes 16. The number of bytes in FEC bytes 16 can be increased to improve error correction ability, but in this example one FEC byte is provided for each mux data frame 14. Thus FEC bytes 16 includes 4 FEC bytes.
The channel overhead is relatively small. With 4 mux data frames, 4 sync bytes and 4 FEC bytes are used, for a total of 8 overhead bytes. The number of user payload bytes is 62xc3x974, or 248 bytes.
FIG. 3B shows a RS codeword using low-rate mux data frames. Four mux data frames 14 are provided with error correction by RS FEC bytes 16. One FEC byte is still provided for each mux data frame 14. Thus FEC bytes 16 includes 4 FEC bytes.
The channel overhead is quite high. With 4 mux data frames, 4 sync bytes and 4 FEC bytes are used, for a total of 8 overhead bytes. However, the number of user payload bytes is just 4 bytes. Thus ⅔""s of the channel is used for overhead.
FIG. 4 shows a framing structure for DSL. The G.Lite framing structure is based on the 4 KHz physical layer. User data and sync bytes are multiplexed into mux data frames 14. Each mux data frame 14 has 1 sync byte and Np user payload bytes, for a total of Ki bytes. Mux data frames 14 are arranged together into RS codewords. Each RS codeword 20 contains S mux data frames 14. The RS codeword ends with Ri FEC byte 16.
The RS codewords 20 are then sent to the IFFT to be transformed into symbols for transmission over the phone line. The IFFT operates at a 4-KHz rate, continuously outputting one symbol or 4-KHz frame 22 every 250 xcexcsec. The stream of 4-KHz frames 22 from the IFFT is converted to analog voltages to drive the phone line as output stream 24.
The G.Lite standard requires that the number of 4-KHz frames 22 in a RS codeword is equal to the number of mux data frames 14 in the same RS codeword. Thus each 4-KHz frame 22 is slightly longer than each mux data frame 14. The additional length is due to the FEC bytes 16 that must be allocated among the 4-KHz frames 22. This number of frames, either mux data frames 14 or 4-KHz frames 22, is known as parameter S. Each 4-KHz frame 22 is thus Ri/S bytes longer than each mux data frame 14.
The values of Ri/S are further restricted to integer values. Integer values of Ri/S ensures that the number of bytes per 4-KHz frame is also integer as the number of bytes per 4-KHz frame is equal to Ki+Ri/S . . . This simplifies data paths in the DSL system.
The restriction for integer values of Ri/S ensures that at least as many FEC bytes as there are 4-KHz frames. Also, one sync byte is contained in each mux data frame 14 and thus there are as many sync bytes as 4-KHz frames. For high-rate systems, an overhead of 2 bytes per 4-KHz frame is small. However, for low-rate systems, this 2-byte-per frame overhead is great. When each 4-KHz frame has only 3 bytes, such as for 96 Kbits, over 66% of the channel is spent on overhead. Thus high-rate DSL systems do not scale well to lower rate systems. Bandwidth efficiency is especially poor for low line rates.
It is desirable to provide DSL at both high and low line rates. Then a single DSL board or chip set could be used for both high-rate and low-rate applications. A more efficient framing structure for low-line rates is desired. It is desired to continue to use the 4-KHz system clock for physical framing, but to increase the bandwidth available for user payload bytes at low line rates. It is desired to extend the framing structure for high line rates to provide more bandwidth efficiency at lower line rates. A unified framing structure for both high and low rate DSL is desired.
A bi-level framer is for framing data transmitted over a line at a low line rate. The bi-level framer has a mux-framer that receives user payload bytes and a sync byte. It generates mux data frames by appending Np user payload bytes to the sync byte.
A byte-corrector receives a plurality of S/M of the mux data frames from the muxframer. It generates a plurality of Ri forward-error correction FEC bytes. A symbol-framer receives the plurality of S/M mux data frames from the mux-framer and receives the plurality of Ri FEC bytes from the byte corrector. It generates a plurality of S symbol frames from the S/M mux data frames and the Ri FEC bytes.
A symbol generator is responsive to a system clock. It generates a symbol for transmission over the line for each symbol frame from the symbol-framer.
M is an efficiency factor that is 1 when transmitting at a high line rate above the low line rate, but a positive integer greater than one when transmitting at the low line rate. Thus one symbol is transmitted for each mux data frame at the high line rate, but M symbols are transmitted for each mux data frame at the low line rate.
In further aspects the symbol clock has a constant frequency for all line rates including the low line rate and the high line rate. Thus symbols are transmitted at a constant rate. The constant frequency of the symbol clock is a bout 4 KHz. Symbols transmitted at the low line rate represent fewer of the user payload bytes than symbols transmitted at the high line rate.
In still further aspects, M is 2 or 4 for the low line rate and S is 4, 8 or 16, and S/M is an integer.
In other aspects the symbol generator performs an inverse fast-Fourier transform (IFFT) to generate each symbol. One IFFT operation is performed for each symbol transmitted.
In further aspects the low line rate is at least 64 K bits per second but no more than 256 K bits per second while the high line rate is greater than 1 Megabits per second.